import { createStore } from 'vuex'
// import createPersistedState from 'vuex-persistedstate'
// // // 创建 Vuex store 实例
// export default createStore({
//   state: {
//     // 应用状态
//     token: localStorage.getItem('token') || '', // 用户token
//     userInfo: null, // 用户信息
//     sidebarCollapse: false, // 侧边栏是否折叠
//     loading: false // 全局加载状态
//   },
//   mutations: {
//     // 同步修改状态
//     SET_TOKEN(state, token) {
//       state.token = token
//       localStorage.setItem('token', token)
//     },
//     SET_USER_INFO(state, userInfo) {
//       state.userInfo = userInfo
//     },
//     TOGGLE_SIDEBAR(state) {
//       state.sidebarCollapse = !state.sidebarCollapse
//     },
//     SET_LOADING(state, loading) {
//       state.loading = loading
//     }
//   },
//   actions: {
//     // 异步操作
//     login({ commit }, { username, password }) {
//       return new Promise((resolve, reject) => {
//         // 这里替换为实际的登录API调用
//         mockLogin(username, password).then(response => {
//           commit('SET_TOKEN', response.token)
//           commit('SET_USER_INFO', response.userInfo)
//           resolve(response)
//         }).catch(error => {
//           reject(error)
//         })
//       })
//     },
//     logout({ commit }) {
//       return new Promise(resolve => {
//         commit('SET_TOKEN', '')
//         commit('SET_USER_INFO', null)
//         localStorage.removeItem('token')
//         resolve()
//       })
//     }
//   },
//   getters: {
//     // 计算属性
//     isAuthenticated: state => !!state.token,
//     currentUser: state => state.userInfo,
//     isLoading: state => state.loading
//   },
//   modules: {
//     // 可以在这里添加模块化的store
//     // example: exampleModule
//   }
// })

const store = createStore({
  state() {
    return {
      isInitialLoad: true,  // 标记是否首次加载
      routesData: []
    }
  },
  mutations: {
    addRoutersData(state, payload) {
      state.routesData = payload
    },
    // setInitialLoad(state, value) {
    //   state.isInitialLoad = value
    // }
  },
  // actions:{
  //   generateRoutes({ commit }, userRole) {
  //     // 根据用户角色生成路由
  //     const routes = filterAsyncRoutes(asyncRoutes, userRole);
  //     commit('SET_ROUTES', routes);
  //     return routes;
  //   }
  // },
  // plugins: [
  //   createPersistedState({
  //     key: 'vuex',
  //     paths: ['routesData'] // 只持久化routesData
  //   })
  // ]
})

export default store